Storage system architects typically use standardized communication protocols, at least in part, to minimize the technical expertise and capital expenditures required to develop storage products. Standardized communications protocols also provide a vehicle to set benchmarks for performance and quality. But strict adherence to rigid protocol standards can retard innovation when improvements are unsupportable by the standardized protocol. To illustrate, consider that the Serial Advanced Technology Attachment (“SATA”) specification has been developed for standardizing the transfer of data to and from one or more storage devices (e.g., one or more hard disks). The SATA specification provides users with enhanced performance and reliability, as well as techniques for easily upgrading storage devices. Further, the SATA specification defines the use of port multipliers so that a single SATA port can communicate with multiple drives. While functional, the SATA specification does not provide the flexibility to establish a communications channel between a host computer and any point within a system of storage devices, such as at a port multiplier, for performing storage-related functions that are not supported by the SATA specification. Without a communication channel for transferring commands into the system of storage devices for performing storage-related functions, the host computer is required to implement those storage-related functions. Hence, the host computer would not benefit from the enhanced performance or reliability features provided by SATA.
In view of the foregoing, it would be desirable to provide a communication apparatus, a SATA communication device, a system, an enhanced port multiplier and a method that minimize the drawbacks of standardized communications protocols, such as the SATA protocol.